package main

import "fmt"

type BInterface interface {
	b()
}
type CInterface interface {
	c()
}
type AInterface interface {
	BInterface
	CInterface
	a()
}

type Stu struct {
}

func (s Stu) a() {
	fmt.Println("a")
}
func (s Stu) b() {
	fmt.Println("b")
}
func (s Stu) c() {
	fmt.Println("c")
}

type E interface {

}

func main() {
	var s Stu
	var a AInterface = s
	a.a() // 打印a
	a.b() // 打印b
	a.c() // 打印c

	var e E = a    // 空接口可以接任何其他类型
	fmt.Println(e) // {}
}
